package com.atguigu.demo03_knife4j.bean;

import com.baomidou.mybatisplus.annotation.*;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

/**
 * @TableName t_emp
 */
@TableName(value ="t_emp")
@Schema(description = "员工数据模型") //swagger对实体类+和属性 描述的注解
@Data
public class Emp {
    @Schema(description = "员工id" , defaultValue = "1")
    @TableId("emp_id")
    private Long id;
    @Schema(description = "员工姓名")
    @TableField("emp_name")
    private String name;

    @Schema(description = "员工月薪" , hidden = true)//hidden 表示当前字段隐藏 不显示到接口文档中！
    @TableField("emp_salary")
    private Double salary;
    @Schema(description = "部门id")
    @TableField("dept_id")
    private Integer deptId;
    // 只要使用了这个注解，mp的mapper 查询、更新删除时自动使用 where语句添加逻辑删除字段判断  where is_deleted = 0
    @TableLogic //当前字段为逻辑删除字段   //删除时使用 update 更新 is_deleted的值为1
    @Schema(hidden = true)
    @TableField("is_deleted")
    private boolean deleted;
}